package com.example.educationcourse.entity;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

@Table(name = "order_info")
public class OrderInfo {
    /**
     * 主键
     */
    @Id
    private Long id;

    /**
     * 创建时间
     */
    @Column(name = "gmt_create")
    private Date gmtCreate;

    /**
     * 修改时间
     */
    @Column(name = "gmt_modified")
    private Date gmtModified;

    /**
     * 讲师用户编号
     */
    @Column(name = "lecturer_user_no")
    private Long lecturerUserNo;

    /**
     * 讲师名称
     */
    @Column(name = "lecturer_name")
    private String lecturerName;

    /**
     * 用户编号
     */
    @Column(name = "user_no")
    private Long userNo;

    /**
     * 用户电话
     */
    private String mobile;

    /**
     * 用户注册时间
     */
    @Column(name = "register_time")
    private Date registerTime;

    /**
     * 订单号
     */
    @Column(name = "order_no")
    private Long orderNo;

    /**
     * 课程ID
     */
    @Column(name = "course_id")
    private Long courseId;

    /**
     * 课程名称
     */
    @Column(name = "course_name")
    private String courseName;

    /**
     * 应付金额
     */
    @Column(name = "price_payable")
    private BigDecimal pricePayable;

    /**
     * 优惠金额
     */
    @Column(name = "price_discount")
    private BigDecimal priceDiscount;

    /**
     * 实付金额
     */
    @Column(name = "price_paid")
    private BigDecimal pricePaid;

    /**
     * 平台收入
     */
    @Column(name = "platform_profit")
    private BigDecimal platformProfit;

    /**
     * 讲师收入
     */
    @Column(name = "lecturer_profit")
    private BigDecimal lecturerProfit;

    /**
     * 交易类型：1线上支付，2线下支付
     */
    @Column(name = "trade_type")
    private Byte tradeType;

    /**
     * 支付方式：1微信支付，2支付宝支付
     */
    @Column(name = "pay_type")
    private Byte payType;

    /**
     * 购买渠道：1web
     */
    @Column(name = "channel_type")
    private Byte channelType;

    /**
     * 订单状态：1待支付，2成功支付，3支付失败，4已关闭
     */
    @Column(name = "order_status")
    private Byte orderStatus;

    /**
     * 是否显示给讲师(1是，0否)
     */
    @Column(name = "is_show_lecturer")
    private Byte isShowLecturer;

    /**
     * 是否显示给用户看(1是，0否)
     */
    @Column(name = "is_show_user")
    private Byte isShowUser;

    /**
     * 客户备注
     */
    @Column(name = "remark_cus")
    private String remarkCus;

    /**
     * 后台备注
     */
    private String remark;

    /**
     * 支付时间
     */
    @Column(name = "pay_time")
    private Date payTime;

    /**
     * 获取主键
     *
     * @return id - 主键
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置主键
     *
     * @param id 主键
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取创建时间
     *
     * @return gmt_create - 创建时间
     */
    public Date getGmtCreate() {
        return gmtCreate;
    }

    /**
     * 设置创建时间
     *
     * @param gmtCreate 创建时间
     */
    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    /**
     * 获取修改时间
     *
     * @return gmt_modified - 修改时间
     */
    public Date getGmtModified() {
        return gmtModified;
    }

    /**
     * 设置修改时间
     *
     * @param gmtModified 修改时间
     */
    public void setGmtModified(Date gmtModified) {
        this.gmtModified = gmtModified;
    }

    /**
     * 获取讲师用户编号
     *
     * @return lecturer_user_no - 讲师用户编号
     */
    public Long getLecturerUserNo() {
        return lecturerUserNo;
    }

    /**
     * 设置讲师用户编号
     *
     * @param lecturerUserNo 讲师用户编号
     */
    public void setLecturerUserNo(Long lecturerUserNo) {
        this.lecturerUserNo = lecturerUserNo;
    }

    /**
     * 获取讲师名称
     *
     * @return lecturer_name - 讲师名称
     */
    public String getLecturerName() {
        return lecturerName;
    }

    /**
     * 设置讲师名称
     *
     * @param lecturerName 讲师名称
     */
    public void setLecturerName(String lecturerName) {
        this.lecturerName = lecturerName;
    }

    /**
     * 获取用户编号
     *
     * @return user_no - 用户编号
     */
    public Long getUserNo() {
        return userNo;
    }

    /**
     * 设置用户编号
     *
     * @param userNo 用户编号
     */
    public void setUserNo(Long userNo) {
        this.userNo = userNo;
    }

    /**
     * 获取用户电话
     *
     * @return mobile - 用户电话
     */
    public String getMobile() {
        return mobile;
    }

    /**
     * 设置用户电话
     *
     * @param mobile 用户电话
     */
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    /**
     * 获取用户注册时间
     *
     * @return register_time - 用户注册时间
     */
    public Date getRegisterTime() {
        return registerTime;
    }

    /**
     * 设置用户注册时间
     *
     * @param registerTime 用户注册时间
     */
    public void setRegisterTime(Date registerTime) {
        this.registerTime = registerTime;
    }

    /**
     * 获取订单号
     *
     * @return order_no - 订单号
     */
    public Long getOrderNo() {
        return orderNo;
    }

    /**
     * 设置订单号
     *
     * @param orderNo 订单号
     */
    public void setOrderNo(Long orderNo) {
        this.orderNo = orderNo;
    }

    /**
     * 获取课程ID
     *
     * @return course_id - 课程ID
     */
    public Long getCourseId() {
        return courseId;
    }

    /**
     * 设置课程ID
     *
     * @param courseId 课程ID
     */
    public void setCourseId(Long courseId) {
        this.courseId = courseId;
    }

    /**
     * 获取课程名称
     *
     * @return course_name - 课程名称
     */
    public String getCourseName() {
        return courseName;
    }

    /**
     * 设置课程名称
     *
     * @param courseName 课程名称
     */
    public void setCourseName(String courseName) {
        this.courseName = courseName;
    }

    /**
     * 获取应付金额
     *
     * @return price_payable - 应付金额
     */
    public BigDecimal getPricePayable() {
        return pricePayable;
    }

    /**
     * 设置应付金额
     *
     * @param pricePayable 应付金额
     */
    public void setPricePayable(BigDecimal pricePayable) {
        this.pricePayable = pricePayable;
    }

    /**
     * 获取优惠金额
     *
     * @return price_discount - 优惠金额
     */
    public BigDecimal getPriceDiscount() {
        return priceDiscount;
    }

    /**
     * 设置优惠金额
     *
     * @param priceDiscount 优惠金额
     */
    public void setPriceDiscount(BigDecimal priceDiscount) {
        this.priceDiscount = priceDiscount;
    }

    /**
     * 获取实付金额
     *
     * @return price_paid - 实付金额
     */
    public BigDecimal getPricePaid() {
        return pricePaid;
    }

    /**
     * 设置实付金额
     *
     * @param pricePaid 实付金额
     */
    public void setPricePaid(BigDecimal pricePaid) {
        this.pricePaid = pricePaid;
    }

    /**
     * 获取平台收入
     *
     * @return platform_profit - 平台收入
     */
    public BigDecimal getPlatformProfit() {
        return platformProfit;
    }

    /**
     * 设置平台收入
     *
     * @param platformProfit 平台收入
     */
    public void setPlatformProfit(BigDecimal platformProfit) {
        this.platformProfit = platformProfit;
    }

    /**
     * 获取讲师收入
     *
     * @return lecturer_profit - 讲师收入
     */
    public BigDecimal getLecturerProfit() {
        return lecturerProfit;
    }

    /**
     * 设置讲师收入
     *
     * @param lecturerProfit 讲师收入
     */
    public void setLecturerProfit(BigDecimal lecturerProfit) {
        this.lecturerProfit = lecturerProfit;
    }

    /**
     * 获取交易类型：1线上支付，2线下支付
     *
     * @return trade_type - 交易类型：1线上支付，2线下支付
     */
    public Byte getTradeType() {
        return tradeType;
    }

    /**
     * 设置交易类型：1线上支付，2线下支付
     *
     * @param tradeType 交易类型：1线上支付，2线下支付
     */
    public void setTradeType(Byte tradeType) {
        this.tradeType = tradeType;
    }

    /**
     * 获取支付方式：1微信支付，2支付宝支付
     *
     * @return pay_type - 支付方式：1微信支付，2支付宝支付
     */
    public Byte getPayType() {
        return payType;
    }

    /**
     * 设置支付方式：1微信支付，2支付宝支付
     *
     * @param payType 支付方式：1微信支付，2支付宝支付
     */
    public void setPayType(Byte payType) {
        this.payType = payType;
    }

    /**
     * 获取购买渠道：1web
     *
     * @return channel_type - 购买渠道：1web
     */
    public Byte getChannelType() {
        return channelType;
    }

    /**
     * 设置购买渠道：1web
     *
     * @param channelType 购买渠道：1web
     */
    public void setChannelType(Byte channelType) {
        this.channelType = channelType;
    }

    /**
     * 获取订单状态：1待支付，2成功支付，3支付失败，4已关闭
     *
     * @return order_status - 订单状态：1待支付，2成功支付，3支付失败，4已关闭
     */
    public Byte getOrderStatus() {
        return orderStatus;
    }

    /**
     * 设置订单状态：1待支付，2成功支付，3支付失败，4已关闭
     *
     * @param orderStatus 订单状态：1待支付，2成功支付，3支付失败，4已关闭
     */
    public void setOrderStatus(Byte orderStatus) {
        this.orderStatus = orderStatus;
    }

    /**
     * 获取是否显示给讲师(1是，0否)
     *
     * @return is_show_lecturer - 是否显示给讲师(1是，0否)
     */
    public Byte getIsShowLecturer() {
        return isShowLecturer;
    }

    /**
     * 设置是否显示给讲师(1是，0否)
     *
     * @param isShowLecturer 是否显示给讲师(1是，0否)
     */
    public void setIsShowLecturer(Byte isShowLecturer) {
        this.isShowLecturer = isShowLecturer;
    }

    /**
     * 获取是否显示给用户看(1是，0否)
     *
     * @return is_show_user - 是否显示给用户看(1是，0否)
     */
    public Byte getIsShowUser() {
        return isShowUser;
    }

    /**
     * 设置是否显示给用户看(1是，0否)
     *
     * @param isShowUser 是否显示给用户看(1是，0否)
     */
    public void setIsShowUser(Byte isShowUser) {
        this.isShowUser = isShowUser;
    }

    /**
     * 获取客户备注
     *
     * @return remark_cus - 客户备注
     */
    public String getRemarkCus() {
        return remarkCus;
    }

    /**
     * 设置客户备注
     *
     * @param remarkCus 客户备注
     */
    public void setRemarkCus(String remarkCus) {
        this.remarkCus = remarkCus;
    }

    /**
     * 获取后台备注
     *
     * @return remark - 后台备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置后台备注
     *
     * @param remark 后台备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    /**
     * 获取支付时间
     *
     * @return pay_time - 支付时间
     */
    public Date getPayTime() {
        return payTime;
    }

    /**
     * 设置支付时间
     *
     * @param payTime 支付时间
     */
    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }
}